// // #include <stdlib.h>
// // #include <stdio.h>
// // #include <sys/wait.h>
// // #include <unistd.h>
 
// // void Work()
// // {
// //     int cnt =10;
// //     while (cnt--)
// //     {
// //         printf("I am child process, pid: %d, ppid: %d, cnt: %d\n", getpid(), getppid(), cnt);
// //         sleep(1);
// //     }
// // }
 
// // int main()
// // {
// //     pid_t id = fork();
// //     if (id == 0)
// //     {
// //         // child
// //         Work();
// //         exit(0);
// //     }
// //     else
// //     {
// //         // father
// //         pid_t rid = wait(NULL);
       
// //         if (rid > 0)
// //             printf("wait success\n");
// //         else if(rid == -1)
// //         	printf("wait fail\n");
// //         while(1)
// //         {
// //             printf("haha\n");
// //             sleep(1);
// //         }
// //     }
// //     return 0;
// // }
// #include <sys/wait.h>

// #include <stdio.h>

// #include <stdlib.h>

// #include <string.h>

// #include <errno.h>

// #include<unistd.h> 



// int main()

// {

// 	pid_t pid = fork();



// 	if (pid < 0)

// 	{

// 		perror("fork");

// 		exit(1);

// 	}

// 	else if ( pid == 0 )

// 	{

// 		printf("I am child process\n");

// 		sleep(5);

// 		exit(10);

// 	} 

// 	else 

// 	{

// 		int st;

// 		int ret = wait(&st);

// 		if ( ret > 0 && ( st & 0X7F ) == 0 )

// 		{ 

// 			// 正常退出

// 			printf("child exit code:%d ,exit signal:%d ,coredump:%d \n", (st>>8)&0XFF,st&0x7F,(st>>7)&0x1);

// 		} 

// 		else if( ret > 0 ) 

// 		{ 

// 			// 异常退出

// 			printf("sig code : %d\n", st&0X7F );

// 		}

// 	}

// }

#include <unistd.h>

int main()
{
	execlp("ls", "ls", "-al", NULL);
	return 0;
}



